Many wireless local area networks (WLANs), such as wireless communication networks using Carrier Sense Multiple Access with Collision Avoidance (CSMA/CA), are founded on the principle of collision avoidance. Such networks may also conform to a communication standard such as a communication protocol of 802.11 type e.g. Medium Access Control (MAC).
The IEEE 802.11 MAC standard defines the way WLANs must work at the physical and medium access control (MAC) level. Typically, the 802.11 MAC (Medium Access Control) implements the well-known Distributed Coordination Function (DCF) which relies on a contention-based mechanism based on the so-called “Carrier Sense Multiple Access with Collision Avoidance” (CSMA/CA) technique.
The 802.11 medium access protocol standard is mainly directed to the management of communication nodes waiting for the medium to become idle so as to try to access the medium.
FIG. 1 illustrates a communication system in which several communication nodes exchange data frames over a radio transmission channel 100 of a wireless local area network (WLAN).
Access to the shared radio medium to send data frames is based on the CSMA/CA technique, for sensing the carrier and avoiding collision by separating concurrent transmissions in space and time.
Carrier sensing in CSMA/CA is performed by both physical and virtual mechanisms. Virtual carrier sensing is achieved by transmitting control frames to reserve the medium prior to transmission of data frames.
Then a transmitting or source node first attempts through the physical mechanism, to sense a medium that has been idle for at least one DIFS (standing for DCF InterFrame Spacing) time period, before transmitting data frames.
However, if it is sensed that the shared radio medium is busy during the DIFS period, the transmitting node continues to wait until the radio medium becomes idle. To do so, it starts a countdown back-off counter designed to expire after a number of timeslots, chosen randomly in the interval [0,CW], CW (integer) being referred to as the Contention Window. This back-off mechanism or procedure is the basis of the collision avoidance mechanism that defers the transmission time for a random interval, thus reducing the probability of collisions on the shared channel. After the back-off time period, the transmitting node may send data or control frames if the medium is idle.
One problem of wireless data communications is that it is not possible for the transmitting node to listen while sending, thus preventing the transmitting node from detecting data corruption due to channel fading or interference or collision phenomena. A transmitting node remains unaware of the corruption of the data frames sent and continues to transmit the frames unnecessarily, thus wasting access time.
The Collision Avoidance mechanism of CSMA/CA thus provides positive acknowledgement (ACK) of the sent data frames by the receiving node if the frames are received successfully, to notify the transmitting node that no corruption of the sent data frames occurred.
The ACK is transmitted at the end of reception of the data frame, immediately after a period of time called Short InterFrame Space (SIFS).
If the transmitting node does not receive the ACK within a specified ACK timeout or detects the transmission of a different frame on the channel, it may infer data frame loss. In that case, it generally reschedules the frame transmission according to the above-mentioned back-off procedure. However, this can be seen as a bandwidth waste if only the ACK has been corrupted but the data frames were correctly received by the receiving node.
To improve the Collision Avoidance efficiency of CSMA/CA, a four-way handshaking mechanism is optionally implemented. One implementation is known as the RTS/CTS exchange, defined in the 802.11 standard.
The RTS/CTS exchange consists in exchanging control frames to reserve the radio medium prior to transmitting data frames during a transmission opportunity called TXOP in the 802.11 standard as described below, thus protecting data transmissions from any further collisions.
As explained before, a back-off procedure is implemented in the communication nodes.
FIG. 2 illustrates the behaviour of three groups of nodes during a conventional communication over the 802.11 medium: transmitting or source node 20, receiving or addressee or destination node 21 and other nodes 22 not involved in the current communication.
Upon starting the back-off process 270 prior to transmitting data, a station e.g. transmitting node 20, initializes its back-off time counter to a random value as explained above. The back-off time counter is decremented once every timeslot interval 260 for as long as the radio medium is sensed idle (countdown starts from T0, 23 as shown in the Figure).
The time unit in the 802.11 standard is the slot time called ‘aSlotTime’ parameter. This parameter is specified by the PHY (physical) layer (for example, aSlotTime is equal to 9 μs for the 802.11n standard). All dedicated space durations (e.g. back-off) are multiples of this time unit.
The back-off time counter is ‘frozen’ or suspended when a transmission is detected on the radio medium channel (countdown is stopped at T1, 24 for other nodes 22 having their back-off time counter decremented).
The countdown of the back-off time counter is resumed or reactivated when the radio medium is sensed idle anew, after a DIFS time period. This is the case for the other nodes at T2, 25 as soon as the transmission opportunity TXOP granted to transmitting node 20 ends and the DIFS period 28 elapses. DIFS 28 (DCF inter-frame space) thus defines the minimum waiting time for a transmitting node before trying to transmit some data. In practice, DIFS=SIFS+2*aSlotTime.
When the back-off time counter reaches zero (26) at T1, the timer expires, the corresponding node 20 will request access onto the medium in order to be granted a TXOP, and the back-off time counter is reinitialized 29 using a new random back-off value.
In the example of the Figure implementing the RTS/CTS scheme, at T1, the transmitting node 20 that wants to transmit data frames 230 sends a special short frame or message acting as a medium access request to reserve the radio medium, instead of the data frames themselves, just after the channel has been sensed idle for a DIFS or after the back-off period as explained above.
The medium access request is known as a Request-To-Send (RTS) message or frame. The RTS frame generally includes the address of the receiving node (“destination 21”) and the duration for which the radio medium is to be reserved for transmitting the control frames (RTS/CTS) and the data frames 230. One can note that the RTS frame does not contain any indication about the pending data traffic (e.g. type of data or category, traffic identifier, etc.) to be further sent in the data frame 230.
Upon receiving the RTS frame and if the radio medium is sensed as being idle, the receiving node 21 responds, after a SIFS time period 27 (for example, SIFS is equal to 16 μs for the 802.11n standard), with a medium access response, known as a Clear-To-Send (CTS) frame. The CTS frame indicates the remaining time required for transmitting the data frames, computed from the time point at which the CTS frame starts to be sent.
The CTS frame is considered by the transmitting node 20 as an acknowledgment of its request to reserve the shared radio medium for a given time duration. A successful RTS/CTS handshake shows that the source station has gained a TXOP onto the wireless medium.
Thus, the transmitting node 20 expects to receive a CTS frame 220 from the destination node 21 before sending data 230 using unique and unicast (one source address and one addressee or destination address) frames.
The transmitting node 20 is thus allowed to send the data frames 230 upon correctly receiving the CTS frame 220 and after a new SIFS time period 27. In IEEE 802.11, the data are sent as MAC (Medium Access Control) Service Data Units (MSDUs) encapsulated into MAC Protocol Data Units (MPDUs).
An ACK frame 240 is sent by the receiving node 21 after having correctly received the data frames sent, after a new SIFS time period 27.
If the transmitting node 20 does not receive the ACK 240 within a specified ACK Timeout (generally within the TXOP), or if it detects the transmission of a different frame on the radio medium, it reschedules the frame transmission according to the back-off procedure.
Since the RTS/CTS four-way handshaking mechanism 210/220 is optional in the 802.11 standard, it is possible for the transmitting node 20 to send data frames 230 immediately upon its back-off time counter reaching zero (i.e. at T1).
The requested time duration for transmission defined in the RTS and CTS frames defines the length of the granted transmission opportunity TXOP, and can be read by any listening node (“other nodes 22” in FIG. 2) in the radio network.
To do so, each node has in memory a data structure known as the network allocation vector or NAV to store the time duration for which it is known that the medium will be busy. When listening to a control frame (RTS 210 or CTS 220) not addressed to itself, a listening node 22 updates its NAVs (NAV 255 associated with RTS and NAV 250 associated with CTS) with the requested transmission time duration specified in the control frame. The listening node 22 thus keeps in memory the time duration for which the radio medium will remain busy.
Access to the radio medium for the other nodes 22 is consequently deferred 30 by suspending 31 their associated timer and then by later resuming 32 the timer when the NAV has expired. Reference 30 represents the TXOP bounded period wherein source station can exchange data with destination station.
This prevents the listening nodes 22 from transmitting any data or control frames during that period.
It is possible that the destination node 21 does not receive the RTS frame 210 correctly due to a message/frame collision or to fading. Even if it does receive it, the destination node 21 may not always respond with a CTS 220 because, for example, its NAV is set (i.e. another node has already reserved the medium). In any case, the transmitting node 20 enters into a new back-off procedure.
The RTS/CTS four-way handshaking mechanism is very efficient in terms of system performance, in particular with regard to large frames since it reduces the length of the messages involved in the contention process.
In detail, assuming perfect channel sensing by each communication node, collision may only occur when two (or more) frames are transmitted within the same timeslot after a DIFS 28 (DCF inter-frame space) or when their own back-off counter has reached zero nearly at the same time T1. If both transmitting nodes use the RTS/CTS mechanism, this collision can only occur for the RTS frames. Fortunately, such collision is early detected by the transmitting nodes since it is quickly determined that no CTS response has been received. As described above, the original IEEE 802.11 MAC always sends an acknowledgement (ACK) frame 240 after each data frame 230 received.
However collisions limit the optimal functioning of the radio network. In particular, simultaneous transmit attempts from a number of wireless stations lead to collisions. The back-off procedure for the family of IEEE 802.11 standards was first introduced for the DCF mode as the basic solution for collision avoidance, and further employed by the IEEE 802.11e to solve the problem of internal collisions between enhanced distributed channel access functions (EDCAFs). In the emerging IEEE 802.11n/ac standards, the back-off procedure is still used as the fundamental approach for supporting distributed access among mobile stations. The EDCA extends the legacy DCF function to provide a service differentiation and prioritization mechanism. This mechanism is still based on CSMA/CA, but also introduces Arbitration IFS (AIFS) to offer several levels of priority. Thus, the EDCA mechanism is limited to a “soft” QoS, i.e. traffic prioritization. Therefore, the DCF does not provide an effective QoS mechanism but rather a kind of “best effort” mechanism. The EDCA mechanism appears effective for traffic classes with different priorities. However, for nodes having several classes of traffic, several back-off mechanisms are handled in parallel thus leading to increased collision risks. Moreover, for the nodes having the same class of traffic, no priority is provided. These aspects will be further described with reference to FIG. 3.
One important drawback of the random back-off procedure lies in that, it is not possible to determine the exact instant when the medium will be granted for sending data. This generates jitter in the medium access delay and so in the latency. The latency being defined as the time elapsed between the instant when a data unit is provided by the upper layer (typically the IP layer for instance) and the time this data unit is received on the remote node and transmitted to the application, the latency is thus the sum of the medium access delay, the transmission time, and the processing time. Since transmission and processing time can be considered constant (as depending only on the amount of data to transmit), the jitter is mainly introduced by the medium access delay which is not constant.
To reduce the jitter, some bandwidth sharing mechanisms have been applied in order to make several nodes talk successively when a medium access is granted to one of the nodes. This mechanism, known as TDMA (Time Division Multiple Access), allows each node to send data in a dedicated timeslot inside the TXOP each time a node supporting this technology accesses the medium. The node requesting the medium access will be called in the following, the “active node”, while the nodes sending data in the timeslots provided by the active node will be called “passive nodes”.
Using a TDMA transmission scheme inside the granted transmission opportunity TXOP significantly reduces the jitter, even if the medium access has been performed via a CSMA/CA (e.g. DCF) mechanism. However, the usage of the EDCA is not compatible with a TDMA mechanism for the following reason. In the EDCA medium access mechanism, a node tries to access the medium when one of its back-off counters, each associated with a different priority level, reaches zero. In a TDMA based transmission scheme, a passive node can obtain an opportunity to send data on the medium in a given timeslot provided by the active node, regardless of possible back-off values of the EDCA mechanism run by the passive node. Therefore, passive nodes already enrolled in a TDMA transmission still may trigger a request for accessing the network through the EDCA mechanism. In such a situation, conflicts in operation between the access mechanism and the transmission mechanism arise, which may deteriorate the communication.
The present inventors have thus considered the problem of how to manage traffic classification per priority, as EDCA mechanism, within a TDMA transmission scheme.
Conventional TDMA schedules transmission opportunities for different nodes of a TDMA group. Usually, the TDMA requires a central coordinator which starts the TDMA sequence, each node being registered to the central coordinator. Based on the information given by the node during registration, the central coordinator schedules a timeslot during which the registered nodes will send their data. In addition, the registration is usually performed for a dedicated traffic and the timeslot is thus specific to this traffic, which results in considering only one data queue as a source for filling in the scheduled timeslot. However, such scheduling is not compliant with the randomized data sending order defined by the 802.11e EDCA standard.
It is an aim of the present invention to provide a mechanism efficiently managing traffic classification per priority (as an EDCA mechanism) while using a time division multiple access (TDMA) transmission mechanism. A medium access mechanism of a deterministic type may also be used in order to obtain a transmission opportunity TXOP over a communication network. The proposed solutions are particularly, but not exclusively, suited for ad-hoc communication networks.
The present invention has been devised to address at least one of the foregoing concerns as well as their combination.